Embodiments of the present invention relate to methods for balancing financial documents, and more particularly, to methods for allocating financial values across multiple accounts using precise values.
In computerized financial management systems, or accounting systems, whenever there is a need to perform any calculation on monetary amounts, rounding errors become a big issue. This is because all currency has a limited degree of precision on monetary values. For example, the US dollars can only be calculated down to one cent but not to a fraction of a cent. Accordingly, the computerized financial management systems represents all monetary values and performs all calculations only to the limited degree of precision. Thus, rounding errors, especially with small numbers, are unavoidable. Financial documents are the primary examples where rounding errors become critical. In order to keep the accuracy of the financial balance sheets, each financial document that is included on the balance sheet must balance to zero. In addition, any amount in the original document must be exactly accounted for in the modified document.
Sometimes, values from a financial balance sheet, which keeps track of money coming in and going out, must be allocated across a plurality of different accounts—i.e., different projects, different organizations, different documents, and the like. Allocations between accounts may be expressed in terms of percentages or shares. For example, suppose A pays vendor B 100 USD out of A's bank account. The financial document may show −100 USD as a first line item for A's bank account and +100 USD against A's vendor account. If the 100 USD A paid to B is apportioned to budgets for three projects (Project 1, Project 2, and Project 3), A must split this 100 USD among three different accounts in A's internal books. The following table illustrates a typical financial document having line item values is allocated across a plurality of accounts:
TABLE 1Line ItemValueAccount 1Account 2. . .Account nLine Item 1a1      a    1    ·            x      1        x        a    1    ·            x      2        x  . . .      a    1    ·            x      n        x   Line Item 2a2      a    2    ·            x      1        x        a    2    ·            x      2        x  . . .      a    2    ·            x      n        x   . . .. . .. . .. . .. . . Line Item mam      a    m    ·            x      1        x        a    m    ·            x      2        x  . . .      a    m    ·            x      n        x  where x1, x2, and x3 represent respective share allocations and x represents a sum of all shares outstanding
      (                  ∑                  i          =          1                3            ⁢              x        i              )    ,and a1-am represents a different line item values. To be a balanced document, the line item values a1-am must sum to zero.
In Table 1, each cell contains a value representing how much of a given line item belongs to a particular account. Thus, the value of cell (i=1, j=1) may be the amount of line item 1 multiplied by the ratio of account 1's share and the total number of shares
      (                  a        1            ·                        x          1                x              )    .For consistency purposes, the sum of all cell values on a given row
  (            i      .      e      .        ,                  a        1            =                                    a            1                    ·                                    x              1                        x                          +                              a            1                    ·                                    x              2                        x                          +        …        ⁢                                  +                              a            1                    ·                                    x              n                        x                                )must equal the amount of a line item represented in that row. Additionally, to remain in balance, the sum of all line items within one column must be zero
      (          0      =                                    a            1                    ·                                                    x                1                            x                        .                          +                              a                2                                              ·                                    x              1                        x                          +        …        ⁢                                  +                              a            m                    ·                                    x              1                        x                                )    .In the following, we use the notation aij for the values
      a    i    ·                    x        j            x        .  
With monetary values, the individual values must be rounded to a limited degree of precision on the monetary values. Such calculations, however, may result in rounding errors. Suppose Line Item 1 with a total amount of 100 USD to be allocated among three projects in equal shares. This will result in the following table:
TABLE 2In US $aiProj 1Proj 2Proj 3Line item 110033.3333.3333.33Line item 210033.33. . .. . .Line item 3−200−66.67. . .. . .Each share of Line item 1 is rounded to 33.33 USD, but the sum of these three shares do not add up to the total amount of Line Item 1, which is 100 USD. While these individual rounding errors may seem small at first glance, for organizations like government agencies, banks, and/or any other financial institutions, these rounding errors may be critical.
Accordingly, there is need in the art for a method that reduces these rounding errors and provides accurate calculations of monetary values when allocating financial statement values across two or more accounts.